﻿using System;

namespace mal.WP7.GoogleAnalytics.Business.Repository
{
    public class WebsiteStatisticsAvailableMessage : WebsiteMessageBase
    {
        #region Construction / Destruction
        public WebsiteStatisticsAvailableMessage(Website website)
            : base()
        {
            this.Type = WebsiteStatisticsAvailableType.Unknown;
            this.Website = website;
        }

        public WebsiteStatisticsAvailableMessage(Website website, Exception error)
            : base(error)
        {
            this.Type = WebsiteStatisticsAvailableType.Unknown;
            this.Website = website;
        }

        public WebsiteStatisticsAvailableMessage(Website website, WebsiteStatisticsAvailableType type)
            : base()
        {
            this.Website = website;
            this.Type = type;
        }

        public WebsiteStatisticsAvailableMessage(Website website, WebsiteStatisticsAvailableType type, Exception error)
            : base(error)
        {
            this.Website = website;
            this.Type = type;
        }
        #endregion

        #region Properties
        public Website Website { get; private set; }
        public WebsiteStatisticsAvailableType Type { get; private set; }
        #endregion

        public enum WebsiteStatisticsAvailableType
        {
            Unknown,
            Day,
            Week,
            Month,
            Year,
            DashboardDay,
            DashboardWeek,
            DashboardMonth,
            DashboardYear
        }
    }
}
